home *** CD-ROM | disk | FTP | other *** search
/ Mac Magazin/MacEasy 32 / Mac Magazin and MacEasy Magazine CD - Issue 32.iso / Multimedia / MIDI / vsamp-200 / Read Me < prev    next >
Text File  |  1997-02-04  |  18KB  |  170 lines

  1.                                                         VSamp
  2.  
  3.                                 A Sample Playback Program
  4.                                       For the Macintosh
  5.  
  6.  
  7.                                                                                     Version: 2.0.0
  8.                                                                      26th January 1997
  9.  
  10. If you have any problems or comments regarding VSamp, please email the author Malcolm Haylock at smaug@kagi.com
  11.  
  12. Contents:
  13.  
  14.   Introduction
  15.     Quick Demo
  16.     Registration
  17.     Overview
  18.     Using VSamp
  19.     OMS Thru
  20.     Using VSamp with Sound Cards
  21.     Version History
  22.  
  23. Introduction
  24.  
  25. VSamp is a long-awaited program that turns the Macintosh into an OMS and Sound Manager compatible multitimbral sample playback module. Configured like a simple sampler, VSamp can be setup to playback on 16 MIDI channels with up to 32 samples per channel, mapped and enveloped to user-defined configurations. This can then be driven by an OMS-compatible sequencer or the included application 'OMS Thru' running on the same computer.
  26.  
  27. Without registration, this program will stop playing a loaded bank after about four minutes from when the bank is loaded. The bank can be restarted with a single command. See the section "Registration" on how to obtain a fully operational version.
  28.  
  29. Quick Demo
  30.  
  31. 1.   If you don't yet have OMS 2.0 or later installed, download it from www.opcode.com or ftp.opcode.com and install it. 
  32. 2.   Launch 'VSamp' and choose Preferences from the Edit menu. Set the output resolution (8 or 16 bit) and sample rates to the same as shown in the Sound Out panel of the Sound control panel.
  33. 3.  Choose Open from the File menu. Navigate to the folder 'Demo Bank' in the VSamp folder and open the file 'tenor sax.bank'.
  34. 4.   Choose Load Bank from the Bank menu.
  35. 5.   Launch 'OMS Thru' and hold down the mouse on the top bar, selecting the name of your controller keyboard and releasing the mouse. Similarly, hold down the mouse on the lower bar and select 'VSamp'. If VSamp doesn't appear in the pull down menu it means VSamp is not currently running.
  36. 6.   Set your keyboard to transmit on MIDI channel 1 and play - you now have a sampled tenor saxaphone!
  37. 7.   If you have on OMS compatible sequencer, see you manual on routing MIDI to VSamp.
  38.  
  39. Registration
  40.  
  41. The version of VSamp included with this package requires a registration number, otherwise it will stop playing a loaded bank after about four minutes. The bank can be reloaded with a single command.
  42.  
  43. To obtain a registration number:
  44. 1) Launch the enclosed program "Register".
  45. 2) Type your name and email address in the upper left spaces provided.
  46. 3) Type how many single user licenses you require and if you'd like a site license or world licence in the spaces provided.
  47. 4) Choose your payment method from the pull-down menu in the lower left area. The quickest way is to pay by credit card then email or fax the details. All credit card details are encrypted when you email them.
  48.       For credit card: enter your credit card details then click the Copy... button. Go to your email program and  paste into an a new message. Send this to sales@kagi.com
  49.       For cash, check and invoice: click the Print... button and send the form with your payment to the address on the printed form.
  50. 5) I will email a registration number as soon as I receive your details from kagi.
  51.  
  52. Overview
  53.  
  54. Output resolution: 8 or 16 bit
  55. Output frequency: 11025 to 44100 Hz
  56. Sample Resolution: 8 or 16-bit  (best with 16-bit)
  57. Sample Frequency: any    (best with 44.1kHz)
  58. Polyphony: up to 32 (computer dependent) voices dynamically allocated
  59. Sample mapping: 32 samples per instrument
  60. Sample Memory: Depends on memory of computer.
  61. Multitimbral: 16 instruments per bank assigned to unique MIDI channels.
  62. MIDI Implementation: note on, note on velocity, note off (0x9x or 0x8x with 0 velocity), dynamic volume (ctrl 7), dynamic pan (ctrl 10), channel sustain pedal (ctrl 64), channel pitch bend, all notes off (ctrl 123).
  63. MIDI compatibility: Requires OMS 2.0 or greater. (from www.opcode.com)
  64.  
  65. System Requirements
  66. * Best with 040 or Powermac and 16-bit sound.
  67. * OMS 2.0 or later (from ftp.opcode.com or www.opcode.com)
  68. * Sound Manager 3.1 or later strongly recommended.
  69. * An OMS compatible sequencer or the included application 'OMS Thru'.
  70.  
  71. Polyphony
  72. Polyphony is user-defined and depends on the processor speed. The only machine I have run this on is a powermac 7200/90 which gives 16 note polyphony for 16-bit 44.1kHz sound without using 'high quality' pitch shifting and 9 notes with the higher quality pitch shifting. Using 22kHz sound will approximately double these values. Faster machines will give more up to a maximum of 32. Please let me know what performance different machines are capable of. If the poyphony is set too high, a disjointed sound will be heard due to breaks between the double buffering.
  73.  
  74. Sample Management
  75. The three limitations imposed by the program on sample management are the number of samples that can be loaded, the total amount of memory which all samples occupy, and the length of any one sample. Samples are stored as a Macintosh sound resource which can be created from AIFF and Sound Designer files with such shareware applications as SoundHack and SoundApp.
  76.  
  77. The maximum number of samples that can be loaded is in this case a fairly arbitrary number, but it was decided that 32 samples per instrument for each of the sixteen instruments (512 samples) is adequate in most cases. An Akai Sampler can only store 255 in total.
  78.  
  79. The memory available to the samples is limited by the size of the application's heap. This value is set in the program's Get Info window accessed in the Finder. Macintosh sound resources contain a header as well as the sample data, but the header size is insignificant with regard to memory allocation. The program has been tested with almost 6Mb of samples loaded without a problem and theoretically it could go much higher if more computer RAM was available.
  80.  
  81. The reliance on sound resources for the sample format limits the maximum size of any one sample. 'Inside Macintosh' mentions that resources should be kept below about 5 Mb, but as this represents almost a minute of 16-bit 44.1kHz mono sound, it is not really a concern unless the program is to be used primarily for triggering long samples. In this case a digital sequencer, such as Opcode's Studio Vision, would be a more appropriate tool, as long samples do not have to be resident in RAM and allows complete synchronisation between MIDI and digital audio.
  82.  
  83. MIDI Compatibility
  84. The integration of this program into currently existing systems has been an important consideration in its design, and for this reason it was decided that the best MIDI system to use would be the 'Open Music System' (formerly ‘Opcode MIDI System’) or OMS. This powerful MIDI programming library was written by Opcode to control the MIDI routing for their various hardware and software products, but it is soon to be adopted by Apple as the standard MIDI manager in the Macintosh. VSamp's MIDI routing operates by opening a virtual MIDI destination in OMS which is recognised by other OMS-compatible applications running concurrently. VSamp has been successfully used with Opcode's Vision and Steinberg's Cubase sequencers.
  85.  
  86. Using VSamp
  87.  
  88. VSamp is a stand-alone application that can be launched from the Macintosh Finder. As stated earlier, the memory available to VSamp for storage of samples can be set from the program's Get Info box. Set the 'preferred size' to the maximum amount of RAM that would be free with the OMS sequencer running concurrently.
  89.  
  90. The VSamp interface is very simple to use in that it contains only four menus. The first is the File menu which allows the user to configure instruments and banks. The second menu is the Edit menu, containing the standard edit commands as well as the Preferences item where the polyphony, sound buffer size, output resolution and sample rate are set. The third menu is the Bank menu which is used for loading and unloading banks into RAM.
  91.  
  92. Setting the Sound Format
  93. The type of sound output by VSamp needs to agree with the values set in the sound control panel for maximum efficiency. VSamp is capable of outputting sound as 8 or 16-bit numbers at various sample rates from 11 to 44.1 kHz. First go to the Sound control panel for your macintosh and select a sample resolution and rate. Then go to VSamp and set the same value in the Preferences item. The sample rate has a big effect on the polyphony and in general halving the sample rate will double the available polyphony. Therefore if you can make do with 22kHz sound, do so. The sample resolution has a much smaller impact on speed so if you have 16-bit sound available, use it.
  94.  
  95. Arranging Samples
  96. The arrangement of sounds in VSamp is very straightforward. The most basic unit is the sample, stored as a Macintosh sound resource. The sound resource contains all the necessary information about the resource, including base frequency, sample rate and loops. These values are set using either a commercial digital waveform editor such as Macromedia's 'SoundEdit 16', Passport's 'Alchemy' or Digidesign's 'Sound Designer' software or alternatively with such shareware programs as the excellent 'D-SoundPRO', 'Sound Effects', 'SndSampler'  and ‘SoundHack’ available from info-mac. For accurately setting loops a waveform editor is recommended. Note that if you are using stereo samples only the 1st channel will be used.
  97.  
  98. The organisation of a group of samples (eg piano) across the keyboard is called an instrument. A VSamp instrument is created or edited with the commands New and Open respectively, chosen from the File menu.
  99.  
  100. Each line of this instrument is used to select a sample for this instrument and define it's lower and upper notes on the keyboard. Click the blue sample box (2nd column) to select the file in which the sound resource resides. The next column is a pop-up menu of all the sound resources in the selected file. The resources are listed by ID number and name, and selecting a resource displays it's number in the Resource box (3rd column). Next the lower and upper MIDI notes (A0-C8) are entered in the respective columns. You can use a MIDI keyboard to enter these values but you must have the application 'OMS Thru' running to route the MIDI from your keyboard to VSamp. These values can be entered as either numbers or names. If two samples overlap in note range, only the sample further down the list will be heard. 
  101.  
  102. Clicking on the Envelope button brings up the window where you can enter the envelope characteristics for this instrument. The diagram explains what each item refers to. Note that all times are in 100ths of a second with a maximum of 9900 (99 secs). The sustain value is in percent of maximum amplitude. Click OK to save this envelope or Cancel to return to the previous values. Finally select Save from the File menu to save your instrument.
  103.  
  104. It is important to note that all samples and instrument files must reside in the same directory as the bank file, otherwise you will get an error message when trying to load a bank.
  105.  
  106. Arranging Instruments
  107. The manner in which these instruments are assigned to MIDI channels constitutes a bank. Using New or Open from the File menu to create or edit a bank respectively, brings up a window with sixteen lines, one for each instrument.
  108.  
  109. Each line is used to assign a VSamp instrument to a MIDI channel. Simply select the instrument by clicking on one of the blue instrument boxes then type the MIDI channel (1-16) in the Channel column. If two instruments are given the same channel, only the instrument further down the list will be heard.
  110.  
  111. The pitch bend response is set on the top line. This is the number of semitones that a full bend activates. The maximum is 12 (1 octave)
  112.  
  113. Each line also includes a checkbox for higher quality (but slower) pitch shifting of the sample. Enabling the checkbox 'HiQ' will use interpolation for this instrument but will reduce available polyphony.
  114.  
  115. Finally select Save to save the bank.
  116.  
  117. Loading a Bank
  118. A VSamp bank is loaded into memory using the Load Bank command from the Bank menu. This command is only available when a bank is open and is the front document (choose from the Windows menu if needed). This command opens each of the files referenced by the various instruments in the bank and loads the relevant resources into memory, assigning each to a range of notes for it's particular MIDI channel. Appropriate error messages are given for such problems as not being able to find files or resources, or running out of memory. If the program can't find a file, check that all samples and instrument files are in the same directory as the bank file. Note that the bank loaded is as the window shows, not how the bank was last saved. On the contrary though, any instruments loaded are as they are saved to disk.
  119.  
  120. Unloading a Bank
  121. When a bank is loaded the processor will be doing much extra processing even when no sound is playing. Choosing Unload Bank prevents this when you need the processor for other tasks. A currently loaded bank is also unloaded when you choose Preferences from the Edit menu.
  122.  
  123. Accessing VSamp from Sequencer
  124. VSamp has only been tested with Opcode’s ‘Vision’ and ‘Studio Vision’ and Steinberg's 'Cubase' but should work with any OMS 2-compatible sequencer, provided the user is running OMS 2.0 or later.
  125.  
  126. For users of Vision or Studio Vision, the loaded sounds can be accessed as follows. Once a bank has been loaded by VSamp, switch to Vision and open the Instruments window. From the pull down menu in the title bar of this window, select New Instrument which adds a Vision instrument to the bottom of the list. The first column is the name of the instrument as used by the sequencer and can be edited. The destination is selected by clicking and holding the button on the name in the device menu. This should produce a list of names, one of which should be VSamp. Finally select the MIDI channel for this instrument. Add as many instruments as MIDI channels that are required, assigning a  MIDI channel to each instrument. Note that channels do not have to be unique if the instruments do not overlap in key range. For example, it is possible to divide the keyboard into two (or more) segments assigning a different instrument to each. Once done, VSamp’s bank should now be accessible from Vision as with any other MIDI device.
  127.  
  128. Setting the Polyphony
  129. VSamp requires you to set the polyphony to avoid breaks in the audio signal. A simple test needs to be carried out. Load a bank into VSamp and with the sustain pedal down play up a scale, counting the notes until the sound detereorates. Set this number (minus two for headroom) in the poyphony field from the Preferences item in the Edit menu. Note that if you push the computer too hard the computer is more likely to crash and there will not be enough power to run a sequencer in the foreground. Polyphony is also determined by how many instruments in each bank have their "Hi Quality" checkboxes set. It's best to test the polyphony with this box checked.
  130.  
  131. Fine Tuning the Program
  132. Other fields that can be set in the preferences are the size of the sound buffers and the output format. The default of 240 for the buffer size (with 44.1kHz output) is a good compromise between the responsiveness of the program and the polyphony. A smaller number will make the program react faster but will reduce the available polyphony. The program will not let you set a value lower than 32 or higher than 512. Increasing this value gives more polyphony but slows the responsiveness. Please play around with this value and let me know what you think is best.
  133.  
  134. OMS Thru
  135.  
  136. OMS Thru is a program written by Opcode which acts as a simple MIDI patchbay for OMS. After installing OMS 2.x, you can use this program to route the MIDI messages from a source (top pull-down menu) to a destination (bottom menu). After starting VSamp, it should appear as a destination in OMS Thru.
  137.  
  138. Using VSamp with Soundcards
  139.  
  140. VSamp has been tested with the Pro Audio Spectrum 16 sound card which doesn't
  141. support multichannel sound. Since VSamp only uses one sound channel this is not a problem as long as other applications don't require sound channels. I have found that Opcode's Vision sequencer allocates a sound channel during playback and record which stops VSamp playing. The way to prevent this is as follows:
  142. 1) Go to the Sound Out panel of the Sound control panel and select the output device that you want VSamp to use (PAS16 card)
  143. 2) Launch VSamp and load a bank. This is when VSamp opens it's sound channel.
  144. 3) Go to the Sound Out panel of the Sound control panel and select a different output device that other applicaions can use (MAC internal).
  145. 4) Launch the sequencer or other application.
  146. The VSamp sound will then go to the sound card and other applications will send sound to the Mac which shouldn't upset VSamp. Whenever you load a new bank you will have to change the Sound Out panel of the Sound control panel to your soundcard before you load the bank, then back again before you continue.
  147.  
  148. Version History:
  149.  
  150. 1.4.1, 17th April 1996:
  151.  
  152. 1.5.0, 8th Sep 1996:
  153. 1) Included interpolation option for pitch shifting of each instrument in a bank to improve sound quality.
  154. 2) Reinitialise the sound channel each time a bank is loaded to allow for changes in the preferences and sound control panel.
  155. 3) Fix bug that causes VSamp to crash if OMS not installed.
  156. 4) Compatibility with 8-bit resources with extended headers.
  157. 5) Compatibility of envelope resource between 68k and PPC versions.
  158. 6) Increase demo time to four minutes.
  159. 7) Fixed Bug in OMS Thru that caused it to crash when VSamp was quit when also selected as output device.
  160. 8) Update to OMS developers kit 960523.
  161.  
  162. 2.0.0, 26th Jan 1997:
  163. 1) Completely rewrote interface to be more friendly including:
  164.      Standard File menu commands to open, close and save documents.
  165.      Implemented edit scrap commands.
  166.      Multiple windows open at once slectable with Window menu.
  167.      Increased max number of samples to 32 per instrument.
  168.      68k Macs can now use 16 instruments.
  169. 2) Fixed a bug in envelope routine.
  170. 3) Fixed a bug whereby unlooped samples were sometimes trying to read past end.